﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Configuration;
using Entities;
using Microsoft.ApplicationBlocks.Data;

namespace DAL
{
    public class NegocioAtencionDAL
    {
        static string strCadenaConexion = System.Configuration.ConfigurationManager.ConnectionStrings["ConexionBaseDesarrollo"].ConnectionString;

        public static long Nuevo(NegocioAtencion parNegocioAtencion)
        {
            long longRetorno = 0;
            try
            {
                long.Parse(SqlHelper.ExecuteScalar(
                strCadenaConexion,
                "spNegocioAtencionNuevo",
                parNegocioAtencion.Negocio.IDNegocio,
                parNegocioAtencion.Lunes,
                parNegocioAtencion.Martes,
                parNegocioAtencion.Miercoles,
                parNegocioAtencion.Jueves,
                parNegocioAtencion.Viernes,
                parNegocioAtencion.Sabado,
                parNegocioAtencion.Domingo,
                parNegocioAtencion.Feriado,
                parNegocioAtencion.LunesAViernesMañanaDesde,
                parNegocioAtencion.LunesAViernesMañanaHasta,
                parNegocioAtencion.LunesAViernesTardeDesde,
                parNegocioAtencion.LunesAViernesTardeHasta,
                parNegocioAtencion.SabadoMañanaDesde,
                parNegocioAtencion.SabadoMañanaHasta,
                parNegocioAtencion.SabadoTardeDesde,
                parNegocioAtencion.SabadoTardeHasta,
                parNegocioAtencion.DomingoMañanaDesde,
                parNegocioAtencion.DomingoMañanaHasta,
                parNegocioAtencion.DomingoTardeDesde,
                parNegocioAtencion.DomingoTardeHasta,
                parNegocioAtencion.FeriadoMañanaDesde,
                parNegocioAtencion.FeriadoMañanaHasta,
                parNegocioAtencion.FeriadoTardeDesde,
                parNegocioAtencion.FeriadoTardeHasta
                ).ToString());
                return longRetorno;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }

        public static void Modificar(NegocioAtencion parNegocioAtencion)
        {
            try
            {
                SqlHelper.ExecuteNonQuery(strCadenaConexion, "spNegocioAtencionModificar",
                parNegocioAtencion.Negocio.IDNegocio,
                parNegocioAtencion.Lunes,
                parNegocioAtencion.Martes,
                parNegocioAtencion.Miercoles,
                parNegocioAtencion.Jueves,
                parNegocioAtencion.Viernes,
                parNegocioAtencion.Sabado,
                parNegocioAtencion.Domingo,
                parNegocioAtencion.Feriado,
                parNegocioAtencion.LunesAViernesMañanaDesde,
                parNegocioAtencion.LunesAViernesMañanaHasta,
                parNegocioAtencion.LunesAViernesTardeDesde,
                parNegocioAtencion.LunesAViernesTardeHasta,
                parNegocioAtencion.SabadoMañanaDesde,
                parNegocioAtencion.SabadoMañanaHasta,
                parNegocioAtencion.SabadoTardeDesde,
                parNegocioAtencion.SabadoTardeHasta,
                parNegocioAtencion.DomingoMañanaDesde,
                parNegocioAtencion.DomingoMañanaHasta,
                parNegocioAtencion.DomingoTardeDesde,
                parNegocioAtencion.DomingoTardeHasta,
                parNegocioAtencion.FeriadoMañanaDesde,
                parNegocioAtencion.FeriadoMañanaHasta,
                parNegocioAtencion.FeriadoTardeDesde,
                parNegocioAtencion.FeriadoTardeHasta);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }

        public static void Eliminar(long parIDNegocioAtencion)
        {
            try
            {
                // (strCadenaConexion,spNegocioAtencionEliminar,parIDNegocioAtencion);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }

        public static NegocioAtencion ObtenerUno(long parIDNegocio)
        {
            try
            {
                NegocioAtencion oNegocioAtencion = new NegocioAtencion();
                DataTable dt = new DataTable();
                dt = SqlHelper.ExecuteDataset(strCadenaConexion, "spNegocioAtencionObtenerUno", parIDNegocio).Tables[0];
                if (dt.Rows.Count > 0)
                {
                    oNegocioAtencion.Negocio =  NegocioDAL.BuscarUno(long.Parse(dt.Rows[0]["IDNegocio"].ToString()), false);
                    oNegocioAtencion.Lunes = bool.Parse(dt.Rows[0]["Lunes"].ToString());
                    oNegocioAtencion.Martes = bool.Parse(dt.Rows[0]["Martes"].ToString());
                    oNegocioAtencion.Miercoles = bool.Parse(dt.Rows[0]["Miercoles"].ToString());
                    oNegocioAtencion.Jueves = bool.Parse(dt.Rows[0]["Jueves"].ToString());
                    oNegocioAtencion.Viernes = bool.Parse(dt.Rows[0]["Viernes"].ToString());
                    oNegocioAtencion.Sabado = bool.Parse(dt.Rows[0]["Sabado"].ToString());
                    oNegocioAtencion.Domingo = bool.Parse(dt.Rows[0]["Domingo"].ToString());
                    oNegocioAtencion.Feriado = bool.Parse(dt.Rows[0]["Feriado"].ToString());
                    oNegocioAtencion.LunesAViernesMañanaDesde = dt.Rows[0]["LunesAViernesMañanaDesde"].ToString();
                    oNegocioAtencion.LunesAViernesMañanaHasta = dt.Rows[0]["LunesAViernesMañanaHasta"].ToString();
                    oNegocioAtencion.LunesAViernesTardeDesde = dt.Rows[0]["LunesAViernesTardeDesde"].ToString();
                    oNegocioAtencion.LunesAViernesTardeHasta = dt.Rows[0]["LunesAViernesTardeHasta"].ToString();
                    oNegocioAtencion.SabadoMañanaDesde = dt.Rows[0]["SabadoMañanaDesde"].ToString();
                    oNegocioAtencion.SabadoMañanaHasta = dt.Rows[0]["SabadoMañanaHasta"].ToString();
                    oNegocioAtencion.SabadoTardeDesde = dt.Rows[0]["SabadoTardeDesde"].ToString();
                    oNegocioAtencion.SabadoTardeHasta = dt.Rows[0]["SabadoTardeHasta"].ToString();
                    oNegocioAtencion.DomingoMañanaDesde = dt.Rows[0]["DomingoMañanaDesde"].ToString();
                    oNegocioAtencion.DomingoMañanaHasta = dt.Rows[0]["DomingoMañanaHasta"].ToString();
                    oNegocioAtencion.DomingoTardeDesde = dt.Rows[0]["DomingoTardeDesde"].ToString();
                    oNegocioAtencion.DomingoTardeHasta = dt.Rows[0]["DomingoTardeHasta"].ToString();
                    oNegocioAtencion.FeriadoMañanaDesde = dt.Rows[0]["FeriadoMañanaDesde"].ToString();
                    oNegocioAtencion.FeriadoMañanaHasta = dt.Rows[0]["FeriadoMañanaHasta"].ToString();
                    oNegocioAtencion.FeriadoTardeDesde = dt.Rows[0]["FeriadoTardeDesde"].ToString();
                    oNegocioAtencion.FeriadoTardeHasta = dt.Rows[0]["FeriadoTardeHasta"].ToString();
                }
                return oNegocioAtencion;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
    }
}
